1. Field
The present invention relates generally to communications, and more specifically, to various systems and techniques to synchronize a receiver to a data bit stream carried in a signal transmission.
2. Background
The Global Positioning System (GPS) is part of a satellite based navigation system developed by the United States Department of Defense. It provides global coverage with precision navigation under various environmental conditions. In a fully operational GPS, the entire surface of the earth is covered by 24 satellites which orbit the earth in 12 hours. These satellites are arranged in six orbital planes each containing four satellites. The orbital planes are spaced 60° apart from each other and are inclined approximately 55° with respect to the equatorial plane.
Each GPS satellite transmits two spread-spectrum L-band carriers. The first L-band carrier (L1) is modulated by two pseudo-random-noise (PN) codes, a coarse acquisition code (C/A-code) and a precision code (P-code). The second L-band carrier (L2) is modulated only by the P-code. Civilian navigation receivers use only the C/A code on the L1 carrier. The C/A code belongs to a family known as Gold codes.
Gold codes are relatively short codes with a chip rate of 1.023 MHz and a length of 1023 chips, and thus repeat every one millisecond. One cycle of 1023 chips is called a “PN frame.” Each GPS satellite transmits a signal with a unique Gold code. Superimposed on the Gold code, at 50 bits per second, is a binary phase shift keyed (BPSK) signal with bit boundaries aligned with the beginning of a PN frame. The 50 Hz signal contains the satellite ephemeris, the almanac for all other satellites, clock error parameters, and satellite status.
The GPS receiver has a clock that is synchronized to the satellite clocks. Each satellite clock is used to initiate a transmission of a GPS signal spread by the appropriate Gold code. At the same time, the GPS receiver clock begins generating the same Gold codes. When the GPS signal from any given satellite arrives at the GPS receiver, the Gold code used to spread the GPS signal will lag behind the locally generated Gold code. The GPS receiver determines this lag through an acquisition process by shifting in time the locally generated Gold code until it is aligned with the GPS signal. The time adjustment necessary to bring the two into alignment represents the pseudo-range of the satellite. The term pseudo-range is used because it contains an offset corresponding to the error in the GPS receiver's clock. After obtaining four or more pseudo-ranges from four or more satellites, the GPS receiver, with the knowledge of the satellite data, can obtain a navigational solution to pinpoint its exact location on earth.
The satellite data may be recovered from the GPS signal through a correlation process. The correlation process entails multiplying successive one millisecond portions of the GPS signal with the locally generated Gold code and integrating the product. The correlation results may be accumulated over a 20 millisecond bit period and phase detected to determine each bit value. Normally, the GPS receiver has no prior knowledge of the bit timing, and therefore, an ambiguity exists as to which 20 correlation results should be accumulated. If the correlation results are accumulated over a bit boundary with a bit transition, the ability of the GPS receiver to detect the bit value may be significantly degraded. Accordingly, there is a need for a robust process for resolving bit timing in a reliable fashion. The method should be adaptive to changing environmental conditions and applicable to various technologies.